3
תגובות

לגבי חיפוש בטבלה

פתח yakir ,
נניח יש לי אירוע בטבלה שמורכב מ: בעל האירוע , שם האולם , סוג האירוע

עכשיו אני רוצה לעשות חיפוש על

בעל האירוע : יוסי
שם אולם : הכרמל
סוג אירוע: ברית

סבבה , זה ימצא לי את התוצאה על ידי שאילתא כזו
select * from events where name = 'yossi' AND hall_name='Hacarmel' AND type='breet'

אבל נגיד אם אני רוצה שגם אם אני ארשום רק שני פרטים מתוך ה3 ..
או שלצורך העניין יוסי שכח לציין את סוג האירוע ובטבלה הSQL במקום הערך BREET יופיע לי ערך ריק.

איך בכל זאת אני מבצע חיפוש ,
חשבתי על להשתמש בOR אבל זה פשוט יציג לי המון תוצאות לא רלוונטיות , תודה לעוזרים.

3 תשובות

avatar ענה yonikal56 ב 25 ליוני 2013 #

בשביל זה אפשר לעשות AND רק על מה שחייב כמו שם ואולם אבל בלי ברית שגם יתן פשוט תמחק את הAND type האחרון כי זה לא חובה לפי מה שכתבת אבל שם ואולם זה חשוב יותר.

avatar ענה intval ב 25 ליוני 2013 #

אם אתה רוצה שזה יעבוד גם על 2 מתוך 3 תצטרך לכתוב פשוט את שלושת האופציות:

select * from events where
( name = 'yossi' AND hall_name='Hacarmel' AND type='breet') OR
( name = 'yossi' AND type='breet') OR
( name = 'yossi' AND hall_name='Hacarmel' ) OR
( hall_name='Hacarmel' AND type='breet')

avatar ענה yakir ב 25 ליוני 2013 #

תראו בעיקרון הבנתי אתכם אבל אני צריך שתעזרו לי בחשיבה.
זה החיפוש שלי:


עכשיו לפי דעתכם איך אני יכול לעשות את החיפוש בצורה הכי יעילה ?
אני צריך עזרה יותר במחשבה מאשר בקוד ..

תודה למי שיעזור